package com.cfpl.admin_service.mapper;

import com.cfpl.project_common.pojo.Role;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author 14720
* @description 针对表【role(角色表)】的数据库操作Mapper
* @createDate 2023-10-10 11:09:53
* @Entity com.cfpl.project_common.pojo.Role
*/
@Mapper
public interface RoleMapper extends BaseMapper<Role> {


    /**
     * 给角色分配权限
     */
    void assignPermission(@Param("roleId") Long roleId,@Param("permissionIds") Long[] permissionIds);

    /**
     * 删除角色权限列表
     * @param roleId 角色编号
     */
    void deleteRole_Permission(@Param("roleId") Long roleId);
    /**
     * 删除角色权限列表
     * @param roleIds 角色编号
     */
    void deleteRole_PermissionByIds(@Param("roleIds") List<Long> roleIds);

    /**
     * 查询角色以及所属权限
     * @param roleId 角色编号
     * @return role
     */
    Role queryRoleInfoById(@Param("roleId") Long roleId);
    List<Role> queryRolesInfoByAdminId(@Param("adminId") Long adminId);


    /**
     * 查询是否有角色正在使用权限信息
     * @param permissionIds 权限信息列表
     */
    List<Role> queryPermissionIsUsing(@Param("permissionIds") List<Long> permissionIds);
}




